草庐IT

NumPy 创建数组

全部标签

javascript - 检查数组是否有空元素

如何检查数组是否有空元素?想象一下这个数组,vararr=['a','b',,'d'];arr[2]是未定义。我想检查一下。如果元素有空元素,则返回“true”或返回false。或许是这样的,functionhasEmptyElement(array){for(vari=0;i我很困惑我该怎么做。请高手帮帮我。 最佳答案 从ES2016开始,你应该使用Array.prototype.includes:constarray=["a","b",,"d"];array.includes(undefined);//true(你不需要写und

javascript - 如何在数组中查找对象的索引

我有一个JSON字符串:varStr="[{'label':'Month'},{label:'within'},{label:'From'},{label:'Where'},]";我通过eval把它转换成了一个对象:vartagString=eval(Str);我想在没有循环的情况下获取月份的索引。有没有更好的方法在不使用循环的情况下获取数组中对象的索引?提前致谢! 最佳答案 不要用eval解析json!使用JSON.parse.Array.map是这里循环的一个很好的替代方法:varstr='[{"label":"Month"},

使用私有(private)成员创建 JavaScript 类

我正在开发一个实用程序,用于在javascript中创建类。它有效,问题是如何定义私有(private)属性。这是代码varOO={Class:function(){varlen=arguments.length;vardata=arguments[len-1];varKlass;if(data.constructor===Object){Klass=function(){};}else{Klass=data.constructor;deletedata.constructor;}OO.extend(Klass.prototype,data);//ClassicExtendMethod

javascript - 我们可以在使用 "new"运算符创建对象时省略括号吗?

我见过以这种方式创建的对象:constobj=newFoo;但我认为在创建对象时括号不是可选的:constobj=newFoo();前一种创建对象的方法是否有效并在ECMAScript标准中定义?前一种创建对象的方式与后一种方式有什么区别吗?一个比另一个更受欢迎吗? 最佳答案 引用DavidFlanagan1:Asaspecialcase,forthenewoperatoronly,JavaScriptsimplifiesthegrammarbyallowingtheparenthesistobeomittediftherearen

javascript - 在没有 Canvas 的情况下将字节数组转换为图像数据

是否可以在不使用Canvas的情况下将字节数组转换为图像数据?我目前使用类似这样的东西,但我认为没有Canvas也可以做到,或者我错了吗?varcanvas=document.getElementsByTagName("canvas")[0];varctx=canvas.getContext("2d");varbyteArray=[255,0,0,255,255,0,0,255,255,0,0,255,//red0,255,0,255,0,255,0,255,0,255,0,255,//green0,0,255,255,0,0,255,255,0,0,255,255//blue];va

数组上的 JavaScript .map 并在满足条件时删除项目

我有一个数组queue,当对象被修改时我将其推送到它。如果用户按下save,那么我将遍历queue并为他们应用适当的API调用。如果API调用成功,我想从queue中删除该项目,否则将其保留在里面并通知用户某些项目未成功保存。我目前有这个(在AngularJS中)varunsuccessfulItems=[];varpromise=queue.map(function(item){vardefer=$q.defer();myCallFunction(item,function(response){}//Success,function(response){//Errorunsucces

javascript - 如何有效地将项目添加到 Chrome 存储 API 中的数组?

据我了解,如果您想在ChromeStorageAPI中存储一个数组,并不断添加项目,您需要这样的东西:functionaddToHistory(url){chrome.storage.sync.get('history',function(obj){varhistory=obj.hasOwnProperty('history')?obj.history:[];history.push(url);chrome.storage.sync.set({'history':history},function(){if(chrome.runtime.lastError)console.log(ch

使用数组时 Javascript 向后循环变慢?

我们中的许多人可能已经知道这一点:varlist=...varindex=list.lengthwhile(index--){//dosomething}这被认为是在javascript中执行循环的最快方法,因为您可以避免额外的测试。到目前为止,在过去的几年里,我在处理速度很重要而顺序并不重要的数据时使用了这种技术。但现在我偶然发现一篇文章说处理数组时这实际上更慢。Whichmakesyouavoidanextratest(comparedtothestandardforloop).Butyouknowwhat?thiswillbemuchslowerthanusingtheright

javascript - 减少 ui-grid 创建的 $watches 数量

)首先,我只想对这个伟大的项目表示感谢。我们将ui-grid作为table-grid的一部分进行了集成,由于某些未知原因,ui-grid生成的watch数量对于我们尝试处理的数据量来说是巨大的。例如:网格-9列表格,包含20行基于简单文本的单元格,没有任何自定义单元格模板检查$watches我们得到了960blockwatch。为了调试这个问题,我们打印了每个监视他的元素,大多数时候我们得到了这种元素:[div#1445359168448-19-uiGrid-001Z-cell.ui-grid-cell.ng-scope.ui-grid-coluiGrid-001Z,context:d

javascript - 将对象数组转换为与 nodejs/pg/unnest 兼容的数组

关于UPDATEmultiplerowsfrommultipleparamsinnodejs/pg,我需要运行以下命令:updateportfoliospsetvotes=s.votesfromunnest(array[(5,1),(15,1),(25,2)])s(votesint,idint)wherep.id=s.id其中unnest中我的数组是$1,如下:updateportfoliospsetvotes=s.votesfromunnest($1)s(votesint,idint)wherep.id=s.id但是,我的数组最初由对象组成,如:[{votes:5,id:1},{vo